//
// Material.hpp for  in ~/Dropbox/Projets/raytracer-2016/Sources/Materials/
//
// Made by Jonathan
// Login   <ledey_l@epitech.net>
//
// Started on  Wed Sep 25 01:03:16 2013 Jonathan
// Last update Wed Sep 25 01:06:36 2013 Jonathan
//

#ifndef				MATERIAL_HPP_
# define			MATERIAL_HPP_

# include			"Maths/ShadeRec.hpp"
# include			"Maths/Color.hpp"

namespace			Materials
{
  class				Material
  {
  private:

  protected:
    Material			&operator=(Material const &rOther);

  public:
    Material(void);
    Material(Material const &rOther);
    virtual ~Material(void);

    virtual Material		*Clone(void) const = 0;
    virtual Maths::Color	Shade(Maths::ShadeRec const &rShadeRec);
  };
};

#endif				/* MATERIAL_HPP_ */
